0x3FF0 //ADDLW
0x3C00 //SUBLW
0x3A01 //XORLW
0x3900 //ANDLW
0x3800 //IORLW
0x37FF //RETLW
0x30F0 //MOVLW
0x1F8C //BTFSS - test bit 1
0x1B8C //BTFSC - test bit 1
0x148C //BSF - set  bit 1
0x138C //BCF - clear bit 7 (8th bit)
0x0F0C //INCFSZ or 0x0F8C
0x0E0C //SWAPF or 0x0E8C
0x0D8C //RLF or 0x0D8C
0x0C8C //RRF or 0x0C8C
0x0B0C //DECFSZ or 0x0B8C
0x0A0C //INCF or 0x0A8C
0x090C //COMF or 0x098C
0x080C //MOVF or 0x088C
0x070C //ADDWF or 0x078C
0x068C //XORWF or 0x068C
0x050C //ANDWF or 0x050C
0x040C //IORWF or 0x048C
0x038C //DECF or 0x030C
0x020C //SUBWF or 0x020C
0x018C //CLRF
0x010C //CLRW
0x008C //MOVWF or 0x000C
0x0000 //NOP
0x0064 //CLRWDT
0x2FFF //GOTO
0x27FF //CALL
0x0009 //RETFIE
0x0008 //RETURN
0x0063 //SLEEP

//7 lines of code
0x3FF0 //ADDLW
0x2804 //GOTO
0x3C00 //SUBLW
0x3A01 //XORLW
0x3900 //ANDLW
0x3800 //IORLW
0x30F0 //MOVLW

//a=i+1 where i=0
1283 //  BCF STATUS, 0x5
018E // CLRF i
018F // CLRF 0xF
018C //CLRF a
018D //CLRF 0xD
080E //  MOVF i, W
3E01 //  ADDLW 0x1
008C //  MOVWF a
080F //  MOVF 0xF, W
1803 //  BTFSC STATUS, 0x0
3E01 //  ADDLW 0x1
3E00 //  ADDLW 0x0

//PC = 0x03EF, i=10, a=i+1
300A  //  MOVLW 0xA
1283  //  BCF STATUS, 0x5
008E  //  MOVWF i
3000  //  MOVLW 0x0
008F  //  MOVWF 0xF
018C  //  CLRF a
018D  //  CLRF 0xD
080E  //  MOVF i, W
3E01  //  ADDLW 0x1
008C  //  MOVWF a
080F  //  MOVF 0xF, W
1803  //  BTFSC STATUS, 0x0
3E01  //  ADDLW 0x1
3E00  //  ADDLW 0x0
008D  //  MOVWF 0xD
2BFF  //  GOTO 0x3FF

